﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace Effects.Effects.GuiParts
{
    /// <summary>
    ///  Delegate for <see cref="Switch.OnSwitch"/> event
    /// </summary>
    /// <param name="sender"> Object that has raised the event. </param>
    /// <param name="e"> Evetn arguments. </param>
    public delegate void SwitchSwitched(object sender, SwitchEventArgs e);

    /// <summary>
    ///  Switch Event arguments.
    /// </summary>
    public class SwitchEventArgs
    {
        /// <summary>
        ///  Number of the current state.
        /// </summary>
        private int state;

        /// <summary>
        ///  Gets the current state
        /// </summary>
        public int State
        {
            get { return state; }
        }

        /// <summary>
        ///  Creates new instance that represents given state.
        /// </summary>
        /// <param name="state"> Current state </param>
        public SwitchEventArgs(int state)
        {
            this.state = state;
        }
    }
}
